/**
 * @properties={typeid:35,uuid:"3E35CD98-90ED-46D2-B7E6-491B01F18A63",variableType:-4}
 */
var $NOMBRE_SERVIDOR = globals.$NOMBRE_SERVIDOR;

/**
 * @type {String}
 *
 * @properties={typeid:35,uuid:"7E6888E3-8B01-4D00-AE90-1D460FA3A800"}
 */
var $NOMBRE_TABLA = "adm_t900_tablas";

/**
 * @type {String}
 *
 * @properties={typeid:35,uuid:"E9BE2D44-3AA9-4B3C-9B44-0427A64223CC"}
 */
var $DATA_SOURCE = "db:/" + $NOMBRE_SERVIDOR + "/" + $NOMBRE_TABLA;

/**
 * @properties={typeid:24,uuid:"3563440C-E13B-4F52-B2AC-C1186C85A348"}
 * @AllowToRunInFind
 */
function refrescar_tablas(){

	/** @type {JSFoundSet<db:/pigeon_board/adm_t900_tablas>} */
	var fs_adm_t900_tablas = databaseManager.getFoundSet($DATA_SOURCE);
	
	var tablas = databaseManager.getTableNames(globals.$NOMBRE_SERVIDOR);
	
	// Comprobamos si falta alguna tabla
	fs_adm_t900_tablas.loadAllRecords();
	for (var x = 0; x < tablas.length; x++){
		if (fs_adm_t900_tablas.find()){
			fs_adm_t900_tablas.s_nombre_tabla = tablas[x];
			fs_adm_t900_tablas.search();
		}
		if (fs_adm_t900_tablas.getSize() == 0){
			fs_adm_t900_tablas.newRecord();
			fs_adm_t900_tablas.s_descripcion = tablas[x];
			databaseManager.saveData(fs_adm_t900_tablas);
		}
	}
	
	// Comprobamos si hay alguna tabla que ya no existe
	fs_adm_t900_tablas.loadAllRecords();
	var ds = databaseManager.convertToDataSet(fs_adm_t900_tablas, ['s_nombre_tabla']);
	for (x = 0; x < ds.getMaxRowIndex(); x++ ){
		if (tablas.indexOf(ds.getValue(x + 1, 1)) == -1){
			if (fs_adm_t900_tablas.find()){
				fs_adm_t900_tablas.s_nombre_tabla = ds.getValue(x + 1,1);
				fs_adm_t900_tablas.search();
			}
			fs_adm_t900_tablas.deleteRecord(1);
		}
	}
}


/**
 * Devuelve el Record con la Tabla Asociada
 * @author Roberto J. Blasco
 * @version 1.0
 * 
 * @param {String} nombre_tabla
 * @return {JSRecord<db:/pigeon_board/adm_t900_tablas>}
 *
 * @properties={typeid:24,uuid:"C66DEFFB-6B51-40B2-917B-4790FE2B7CCE"}
 * @AllowToRunInFind
 */
function getRecord(nombre_tabla){
	
	/** @type {JSFoundSet<db:/pigeon_board/adm_t900_tablas>} */
	var fs_adm_t900_tablas = databaseManager.getFoundSet(scopes['adm_t900_tablas'].$DATA_SOURCE);
	fs_adm_t900_tablas.loadAllRecords();
	if (fs_adm_t900_tablas.find()){
		fs_adm_t900_tablas.s_nombre_tabla = nombre_tabla;
		fs_adm_t900_tablas.search();
	}
	
	if (fs_adm_t900_tablas.getSize()){
		return fs_adm_t900_tablas.getRecord(1);
	}else{
		return null;
	}
}

/**
 * @properties={typeid:24,uuid:"DF559F4C-99F5-44EF-8D64-944C06D066A1"}
 */
function menu_navigator(){
	
	forms[globals.$frm_siv_main].elements.tab_principal.removeAllTabs();
	forms[globals.$frm_siv_main].elements.tab_principal.addTab(forms.lst_adm_t900_tablas);
}